Waveform generator for driving electromechanical device

ABSTRACT

An electrical waveform generator for driving an electromechanical load includes a digital signal processor connected to a waveform generator component in turn connected to an amplifier section with a filter network, the latter being connected to sensing and conditioning circuit componentry that is in turn connected to analog-to-digital converter circuitry. A digital memory stores digitized voltage and current waveform information. The processor determines a phase difference between voltage and current waveforms, compares the determined phase difference to a phase difference command and generates a phase error or correction signal. The processor also generates an amplitude error signal for inducing the amplifier section to change its output amplitude to result in a predetermined amplitude error level for a respective one of the voltage and current waveforms.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of application Ser. No. 13/065,644filed Mar. 25, 2011, which in turn is a continuation of application Ser.No. 12/462,335 filed 31 Jul. 2009, which is a continuation-in-part ofapplication Ser. No. 12/157,707 filed Jun. 12, 2008, which claims thebenefit of U.S. Provisional Patent Application No. 60/934,546 filed 14Jun. 2007 and U.S. Provisional Patent Application No. 61/070,091 filed20 Mar. 2008. Parent application Ser. No. 12/462,335 is also acontinuation-in-part of application Ser. No. 12/290,733 filed Nov. 3,2008.

BACKGROUND OF THE INVENTION

This invention relates to an electrical waveform generator for drivingelectromechanical devices such as piezoelectric and magnetostrictivetransducers.

Tools that are made to vibrate at frequencies above the range of humanhearing have been used in science, medicine and industry for manydecades. Applications such as cell disruption, bloodless surgery,welding of metals and plastics and sewage treatment are well known tothe art.

Ultrasonic devices generally consist of a transducer, which convertselectrical energy to mechanical vibration, a probe or horn whichamplifies the vibration amplitude of the transducer and an electric orelectronic signal generator which converts line or battery power to theAC signal with the frequency and voltage necessary to drive saidtransducer against the load imposed.

One of the elements of these systems is a limiting factor to greater useof ultrasound energy in the marketplace. This is the signal generator.

Transducers and probes are fairly easily designed and built to meetspecific application requirements, such as use as a surgical tool or asa cell disruptor in biosciences. Each transducer and probe combinationwill have a characteristic resonance curve of impedance vs. frequency,as depicted in FIG. 1. The minimum impedance point IP_(MIN) of the curveis generally regarded as the series resonance and the maximum impedancepoint IP_(MAX) is considered the anti-resonance or parallel resonance ofthe transducer. This curve will be either broad (FIG. 1A) or narrow(FIG. 1B). It may also have secondary resonances SR superimposed uponthe curve, as shown in FIG. 1C. The absolute value of impedances is alsoimportant, in that the dynamic range of the impedances may be quite highfrom the point where the transducer is unloaded to that where thetransducer is fully loaded.

In addition to the impedance vs. frequency characteristic curve, thetransducer will undergo a phase shift between voltage and currentsignals when the frequency is increased from below the resonant pointsto a point above the both resonances. This phase shift will start as acurrent leading (−90 degrees) through zero at series resonance, up tocurrent lagging (+90 degrees) back through zero phase shift and down tocurrent lagging. This characteristic phase shift may differ greatly fromideal as the system is loaded highly or if the initial design of thetransducer and probe combination is not optimized.

The electronic generator must provide a frequency and voltage/currentdrive which will keep the transducer and probe vibrating at the desiredresonance point against the loads imposed upon it by the application.Traditionally these generators have used phase-locked-loop (PLL)techniques and auto gain circuitry (AGC) well known to the art. In thesesystems, great compromises are generally made since one generator maynot be designed to encompass all known variations of impedance or phasevs. frequency and power requirements that may be encountered in thefield. For example, in some systems, the frequency difference betweenSeries and Parallel Resonance may only be a few hertz. Standard PLLsystems may require such a low loop gain to capture and lock onto thesehigh Q devices that the system is unstable in normal operating modes. Inother systems, the phase characteristic curve may be flattened to thepoint that the PLL may not recognize the phase shift at series orparallel resonance and therefore not be able to lock onto either whenneeded.

Therefore, each application may require a different generator design,which is costly and time consuming to engineer. Therefore, manyapplications go wanting for a solution since no entity is willing toexpend the time and money to provide the hardware solution.

One of the reasons for this is that, in conventional electronic design,the hardware must be changed physically for each application. Here, thehardware of the PLL loop must be optimized for each individualapplication. In addition, the amplifier section of the generator isusually tailored to the maximum power requirement of the particularapplication at hand, to minimize size and cost. If the next applicationrequires a higher power output, the amplifier is generally redesignedfrom scratch to achieve this higher output rating.

OBJECTS OF THE INVENTION

It is an object of the present invention to provide an improvedelectrical waveform generator for driving electromechanical loads suchas piezoelectric and magnetostrictive transducers in ultrasonicapplications.

A further object of the present invention is to provide such an improvedelectrical waveform generator that can be applied to a far greater rangeof transducer, probe and load combinations with a minimum of hardwarechanges, in comparison with convention electronic signal generators.

Another object of the present invention is to provide such an improvedelectrical waveform generator that is small and inexpensive.

Yet another object of the present invention is to provide such animproved electrical waveform generator that may reduce the monetaryroadblocks to ultrasound solutions in the field.

These and other objects of the invention will be apparent from thedrawings and descriptions herein. Although every object of the inventionis attained in at least one embodiment of the invention, there is notnecessarily any embodiment which attains all of the objects of theinvention.

SUMMARY OF THE INVENTION

An electrical waveform generator for driving an electromechanical loadcomprises, in one principal embodiment of the present invention, adigital signal processor or other digital computing unit(microcontroller, microprocessor), a waveform generator component, anamplifier section, sensing and conditioning circuit componentry, andanalog-to-digital converter circuitry. The waveform generator componentis connected to an output of the computing unit for digitallysynthesizing an electrical waveform of a desired frequency in responseto a signal from the computing unit. The amplifier section is connectedat a control input to an output of the waveform generator component andadjusts at least one of a voltage and a current of the waveformexemplarily in response to a signal from a rail supply. The amplifiersection delivers an output waveform of a desired type to input leads ofthe electromechanical load. The sensing and conditioning circuitcomponentry is operatively connected to the amplifier section forsensing and conditioning an output current and an output voltage of theamplifier section across the electromechanical load. Theanalog-to-digital converter circuitry is connected at an input to thesensing and conditioning circuit components and at an output to thecomputing unit. The computing unit accesses a digital memory for storingdigitized voltage and current waveform information. The computing unitis programmed to process the digitized voltage and current waveforminformation in the memory to determine at least a phase differencebetween voltage and current waveforms. The computing unit is furtherprogrammed to compare the determined phase difference to a phasedifference command and to generate a phase error signal fed at leastindirectly to the waveform generator component for causing the same toadjust its output frequency to result in a predetermined phase betweenvoltage and current, or predetermined operating point as a function ofphase. The computing unit is additionally programmed to compare at leastone of voltage and current amplitude respectively to a voltage amplitudecommand and a current amplitude command and to generate an amplitudeerror signal for inducing the amplifier section to change its outputamplitude to result in a predetermined amplitude error level for arespective one of the voltage and current waveforms.

Pursuant to further features of the present invention, the computingunit is programmed to (a) calculate a motional current of theelectromechanical load from the waveform data stored in the digitalmemory, (b) compute a clamped or static capacitance value of theelectromechanical load from waveform data stored in the digital memory,and (c) determine resonant frequencies of the electromechanical loadfrom the waveform data stored in the digital memory, the calculatedmotional current and the computed clamped or static capacitance value.The computing unit may be also programmed to determine an actualmechanical vibration amplitude of the electromechanical load from thecalculated motional current.

Pursuant to another feature of the present invention, the electricalwaveform generator further comprises a first filter for generating andapplying a first signal to the waveform generator component. In theevent that a rail supply provides a signal to the amplifier section, asecond filter may be provided for generating and applying a secondsignal to the control input of the rail supply. The first filter and thesecond filter may be each realized by software and/or hardware.

Pursuant to more features of the present invention, the computing unitmay be further programmed to (1) store, in the digital memory, samplesof control loop error during start up transients, (2) analyze thesamples of control loop error to determine loop performance andstability, (3) use the stored voltage and current waveform informationto determine voltage level values, current level values, and therebycalculate power levels taken from the group consisting of real andapparent power levels, (4) display the power levels on a user interfacein absolute and/or relative scales or displays, (5) calculate the powerfactor between voltage and current signals from the waveform signalsstored in the digital memory, and (6) display the power factor on theuser interface in absolute and/or relative scales or displays.

Pursuant to an additional feature of the present invention, thecomputing unit may be programmed to (i) resolve a zero cross point ofthe phase difference to a fine resolution by searching for aplus-to-minus or minus-to-plus change between two adjacent samples,signifying a crossing of the zero axis, (ii) determine a ratio of an A/Dvalue of one of the two adjacent samples to an absolute difference inA/D values between the two adjacent samples, and (iii) multiply theratio by a sampling period time spacing between the two adjacent samplesto determine where the zero cross point occurs, whereby a fineresolution of zero crossing time may be determined.

The computing unit may be further programmed to (A) calculate a powerfactor between voltage and current signals from waveform signals storedin the digital memory, (B) derive a first phase angle from zero-crossinginformation and a second phase angle from the power factor, (C) comparethe first phase angle with the second phase angle, and (D) generate aphase command for changing the waveform generator frequency to result inthe predetermined phase. When the discrepancy is greater than a selectedthreshold, waveform distortion is indicated and the phase command orreference level is altered.

The computing unit may be programmed to determine at least one of thegroup consisting of waveform amplitude information, waveform RMS voltagelevels, spectral decomposition analysis of waveform information, real orequivalent circuit values of piezoelectric or magnetostrictiveresonators, and phase conditions, and phase or amplitude change rates.

The computing unit may maintain a running window of waveform data withrespect to time in the digital memory.

In accordance with other features of the present invention, thecomputing unit is programmed to determine error levels between aresonant frequency of the electromechanical load and waveform generatoroutput and to determine error levels between desired resonatormechanical vibratory amplitude and actual resonator mechanical vibratoryamplitude.

The memory may store correlated phase difference commands and amplitudecommands.

The computing unit is optionally programmed to vary a phase differencecommand as a function of command amplitude for optimal tracking of thedesired operating point of the electromechanical load (transducerarray), to maintain performance as a function of amplitude and load.

The computing unit may be further programmed to maintain control looperror in a type 0 phase locked loop constant, independent of frequencyof operation, and to use control loop parameters in a phase locked loopcapture mode that may be different than control loop parameters in aphase locked loop locked mode.

In accordance with a further feature of the present invention, thecomputing unit is programmed to carry out a network analysisautomatically upon at least one of (i) detection of an abnormaloperating condition and (ii) user command, the computing unit executinga linear sweep from a first frequency to a second frequency to compilean impedance curve and a phase curve, the computing unit storing resultsof the linear sweep as data samples in the digital memory.

The computing unit may be additionally programmed to operate in a fastpulsing mode, wherein phase-locked-loop parameters including frequencyand loop error are held constant while the amplifier section is disabledduring a recurring off period, so that the phase-locked-loop parametersare not updated during the off period, and wherein during a recurring onperiod, the amplifier section is re-enabled and the phase-locked-loopparameters are again updated continuously.

An electrical waveform generator in accordance with the presentinvention may additionally comprise (a) means for displaying voltage,current, phase and/or impedance curves on a user observable local orremote interface screen and (b) means for deriving system operating andalarm states from displayed curves and visual or audio means foralerting a user as to said operating and alarm states, and may beprogrammed to respond to alarm conditions by shutting down output,triggering alarms and/or changing output amplitude settings.

The computing unit may be also programmed to compensate for atheoretical voltage drop across a capacitor of a transducer equivalentcircuit as a function of load by alternatively increasing and decreasingthe output voltage of the amplifier section by approximately a valueVc_(o) to thereby maintain a theoretical voltage across motionalcomponents of the transducer equivalent circuit substantially constant.Value V_(Co) is a voltage drop across the capacitor of the transducerequivalent circuit and is given by the equation:V _(Co) =I*Xc _(o) =I/(2ΠfC _(o))where I is the current, f is the frequency of operation and C_(o) is thecapacitance of the capacitor in the transducer equivalent circuit.

The present invention contemplates a method corresponding to theabove-described apparatus. The method comprises, in accordance with thepresent invention, (a) digitally generating a signal, (b) digitallysynthesizing an electrical waveform of a desired frequency in responseto the generated signal, (c) variably increasing at least one of avoltage and a current of the electrical waveform to form an outputwaveform, (d) filtering the output waveform to convert the outputwaveform to a desired type and delivering it to input leads of anelectromechanical load, (e) sensing a current and voltage across theelectromechanical load, (f) converting the sensed current and voltagefrom an analog form to a digital form, and (g) storing the digitizedvoltage and current waveform information in a digital memory. The methodalso comprises (h) processing the digitized voltage and current waveforminformation stored in the memory to determine at least a phasedifference between voltage and current waveforms, (i) automaticallycomparing the determined phase difference to a phase difference command,digitally filtering this result and generating a loop error signal fedat least indirectly to a waveform generator component for causing thesame to adjust its output frequency to result in a predeterminedoperating point as a function of phase, and (j) automatically comparingat least one of voltage and current amplitude respectively to a voltageamplitude command and a current amplitude command, feeding thedifference to a loop filter and generating an amplitude error signalapplied at least indirectly to an amplifier section for inducing same tochange its output amplitude to result in a predetermined amplitude levelfor a respective one of the voltage and current waveforms.

According to other features of the present invention, the method furthercomprises (k) automatically calculating a motional current of theelectromechanical load from the waveform data stored in the digitalmemory, (l) automatically computing a clamped or static capacitancevalue of the electromechanical load from waveform data stored in thedigital memory, and (m) automatically determining resonant frequenciesof the electromechanical load from the waveform data stored in thedigital memory, the calculated motional current and the computed clampedor static capacitance value. Another step may constitute determining anactual mechanical vibration amplitude of the electromechanical load fromthe calculated motional current.

The method of the invention may also include (1) storing, in the digitalmemory, samples of control loop error during start up transients, (2)automatically analyzing the samples of control loop error to determineloop performance and stability, (3) automatically using the storedvoltage and current waveform information to determine voltage levelvalues, current level values, thereby calculating power levels takenfrom the group consisting of real and apparent power levels, (4)displaying the power levels on a user interface in absolute and/orrelative scales or displays, (5) calculating the power factor betweenvoltage and current signals from the waveform signals stored in thedigital memory, and (6) displaying the power factor on the userinterface in absolute and/or relative scales or displays.

The method of the invention may additionally include (i) automaticallyresolving a zero cross point of the phase difference to a fineresolution by searching for a plus-to-minus or minus-to-plus changebetween two adjacent samples, signifying a crossing of the zero axis,(ii) automatically determining a ratio of an A/D value of one of the twoadjacent samples to an absolute difference in A/D values between the twoadjacent samples, and (iii) automatically multiplying the ratio by asampling period time spacing between the two adjacent samples todetermine where the zero cross point occurs, whereby a fine resolutionof zero crossing time may be determined.

Further method steps may involve (A) automatically calculating a powerfactor between voltage and current signals from waveform signals storedin the digital memory, (B) automatically deriving a first phase anglefrom zero-crossing information and a second phase angle from the powerfactor, (C) automatically comparing the first phase angle with thesecond phase angle, and (D) automatically generating a phase command forchanging the waveform generator frequency to maintain the predeterminedoperating point as a function of phase.

Other method steps may concern automatically determining at least one ofthe group consisting of waveform amplitude information, waveform RMSvoltage levels, spectral decomposition analysis of waveform information,real or equivalent circuit values of piezoelectric or magnetostrictiveresonators, and phase error conditions, and phase or amplitude changerates.

Additional method steps pursuant to the present invention comprise (I)automatically maintaining a running window of waveform data with respectto time in the digital memory, (II) automatically determining errorlevels between a resonant frequency of the electromechanical load andwaveform generator output, (III) automatically determining error levelsbetween desired resonator mechanical vibratory amplitude and actualresonator mechanical vibratory amplitude.

The memory may store correlated phase difference commands and amplitudecommands.

The method may also include varying a phase difference command as afunction of command amplitude for optimally maintaining the operatingpoint of the electromechanical load. The method may also includemaintaining control loop error in a type 0 phase locked loop constant,independent of frequency of operation, and using control loop parametersin a phase locked loop capture mode that may be different than controlloop parameters in a phase locked loop locked mode.

A network analysis may be carried out automatically upon at least one of(i) detection of an abnormal operating condition and (ii) user command,the computing unit executing a linear sweep from a first frequency to asecond frequency to compile an impedance curve and a phase curve, thecomputing unit storing results of the linear sweep as data samples inthe digital memory.

A fast pulsing mode is possible, wherein phase-locked-loop parametersincluding frequency and loop error are held constant while the amplifiersection is disabled during a recurring off period, so that thephase-locked-loop parameters are not updated during the off period, andwherein during a recurring on period, the amplifier section isre-enabled and the phase-locked-loop parameters are again updatedcontinuously.

An electrical waveform generator for driving an electromechanical loadhaving at least one feedback crystal or coil comprises, in a secondprincipal embodiment of the present invention, a digital signalcomputing unit, a waveform generator component, an amplifier section,first sensing and conditioning circuit components, second sensing andconditioning circuit components, and analog-to-digital convertercircuitry. The waveform generator component is connected to an output ofthe computing unit for digitally synthesizing an electrical waveform ofa desired frequency in response to a signal from the computing unit. Theamplifier section is connected at a control input to an output of thewaveform generator component for driving the electromechanical deviceinto high power and adjusts at least one of a voltage and a current ofthe waveform, optionally in response to a signal from a rail supply. Theamplifier section delivers an output waveform of a desired type to inputleads of the electromechanical load. The first sensing and conditioningcircuit components are operatively connected to the amplifier sectionfor sensing and conditioning an output current and an output voltage ofthe amplifier section across the electromechanical load. The secondsensing and conditioning circuit components are operatively connected tothe feedback crystal or coil for sensing and conditioning the output ofthe feedback crystal or coil. The analog-to-digital converter circuitryis connected at inputs to the first and the second sensing andconditioning circuit components and at an output to the computing unit.The computing unit accesses a digital memory for storing digitizedvoltage and current waveform information from the amplifier section anddigitized voltage and current waveform information from the feedbackcrystal or coil. The computing unit is programmed to process thedigitized voltage and current waveform information in the memory todetermine at least a phase difference between a feedback signal from thefeedback crystal or coil and the transducer voltage or current waveform.The computing unit is further programmed to compare the determined phasedifference to a phase difference command and to generate a signal fed atleast indirectly to the waveform generator component for causing same toadjust its output frequency to maintain a predetermined operating pointas a function of phase. The computing unit is additionally programmed tocompare the amplitude of the signal from the feedback crystal or coil toa feedback amplitude command and generate an amplitude error signal(which may be applied at least indirectly to the rail supply) forchanging the output amplitude of the amplifier section to result in apredetermined amplitude error level.

Pursuant to further features of the present invention, the secondembodiment of an electrical waveform generator further comprises a firstfilter for generating and applying a first signal to the waveformgenerator component. Where a rail supply delivers a signal to theamplifier section, a second filter may be provided for generating andapplying a second signal to the rail supply. The first filter and thesecond filter may be realized by software and/or hardware.

The computing unit of the second embodiment may be further programmed tostore, in the digital memory, samples of control loop error during startup transients, to analyze the samples of control loop error to determineloop performance and stability, and to use the stored voltage andcurrent waveform information to determine voltage level values, currentlevel values, and thereby calculate power levels taken from the groupconsisting of real and apparent power levels. Also, the computing unitmay be programmed to display the power levels on a user interface inabsolute and/or relative scales or displays, to calculate the powerfactor between voltage and current signals from the waveform signalsstored in the digital memory, and to display the power factor on theuser interface in absolute and/or relative scales or displays.

According to another feature of the present invention, the computingunit of the second embodiment of the electrical waveform generator isfurther programmed to resolve a zero cross point of the phase differenceto a fine resolution by searching for a plus-to-minus or minus-to-pluschange between two adjacent samples, signifying a crossing of the zeroaxis, to determine a ratio of an A/D value of one of the two adjacentsamples to an absolute difference in A/D values between the two adjacentsamples, to multiply the ratio by a sampling period time spacing betweenthe two adjacent samples to determine where the zero cross point occurs,whereby a fine resolution of zero crossing time may be determined. Thecomputing unit may calculate a power factor between voltage and currentsignals from waveform signals stored in the digital memory, to derive afirst phase angle from zero-crossing information and a second phaseangle from the power factor, to compare the first phase angle with thesecond phase angle, to generate a phase command for changing thewaveform generator frequency to result in the predetermined phaseoperating point.

The computing unit of the second embodiment may be also programmed todetermine an actual mechanical vibration amplitude of theelectromechanical load from the feedback signal of the feedback crystalor coil.

The computing unit may be further programmed to compute a clamped orstatic capacitance value of the electromechanical load from waveformdata stored in the digital memory.

The computing unit may be further programmed to determine one or more ofthe following: (1) phase difference between transducer voltage andcurrent waveforms, (2) transducer voltage waveform amplitudeinformation, (3) current waveform amplitude information, (4) feedbacksignal phase difference to either voltage or current waveform, (5)feedback signal amplitude and frequency, (6) waveform RMS voltagelevels, (7) spectral decomposition analysis of waveform information, (8)real or equivalent circuit values of piezoelectric or magnetostrictiveresonators, (9) phase error conditions, and (10) phase or amplitudechange rates.

The computing unit may maintain a running window of waveform data withrespect to time in the digital memory.

According to additional features of the present invention, the computingunit of the second embodiment is further programmed to determine errorlevels between a resonant frequency of the electromechanical load andwaveform generator output and to determine error levels between desiredresonator mechanical vibratory amplitude and actual resonator mechanicalvibratory amplitude.

Correlated phase difference commands and amplitude commands may bestored in the digital memory.

According to other features of the present invention, the computing unitof the second embodiment is further programmed to (i) vary a phasedifference command as a function of command amplitude for optimaltracking of desired operating point of the electromechanical load, (ii)maintain control loop error in a type 0 phase locked loop constant,independent of frequency of operation, (iii) use control loop parametersin a phase locked loop capture mode that may be different than controlloop parameters in a phase locked loop locked mode, and (iv) carry out anetwork analysis automatically upon at least one of (A) detection of anabnormal operating condition and (B) user command, the computing unitexecuting a linear sweep from a first frequency to a second frequency tocompile an impedance curve and a phase curve, the computing unit storingresults of the linear sweep as data samples in the digital memory.

The computing unit of the second embodiment may be further programmed tooperate in a fast pulsing mode, wherein phase-locked-loop parametersincluding frequency and loop error are held constant while the amplifiersection is disabled during a recurring off period, so that thephase-locked-loop parameters are not updated during the off period, andwherein during a recurring on period, the amplifier section isre-enabled and the phase-locked-loop parameters are again updatedcontinuously.

A method corresponding to the second embodiment of the apparatuscomprises, in accordance with the present invention, (a) digitallygenerating a signal, (b) digitally synthesizing an electrical waveformof a desired frequency in response to the generated signal, (c) variablyincreasing at least one of a voltage and a current of the electricalwaveform to form an output waveform, (d) filtering the output waveformto convert the output waveform to a desired type and delivering it toinput leads of an electromechanical load having at least one feedbackcrystal or coil, (e) sensing a current and voltage across theelectromechanical load, (f) sensing a current and voltage across thefeedback crystal or coil, (g) converting the sensed currents andvoltages from an analog form to a digital form, and (h) storing thedigitized voltage and current waveform information in a digital memory.The method also comprises (i) processing the digitized voltage andcurrent waveform information stored in the memory to determine at leasta phase difference between a feedback signal from the feedback crystalor coil and the voltage or current waveform across the electromechanicalload, (j) automatically comparing the determined phase difference to aphase difference command and generating a signal fed at least indirectlyto the waveform generator component for causing the same to adjust itsoutput frequency to result in a predetermined phase between voltage andcurrent, and (k) automatically comparing the amplitude of the signalfrom the feedback crystal or coil to a feedback amplitude command andgenerate an amplitude error signal applied at least indirectly to thecontrol input of the amplifier section for inducing same to change itsoutput amplitude result in a predetermined amplitude level.

Pursuant to further features of the present invention, the method of thesecond embodiment further comprises (a) filtering the difference betweenthe feedback signal and the commanded phase signal and applying a firsterror signal to the waveform generator component, and (b) filtering thedifference between the feedback signal and commanded amplitude signaland applying a second error signal to the control input of the amplifiersection.

Other potential steps of the second embodiment include storing, in thedigital memory, samples of control loop error during start uptransients, analyzing the samples of control loop error to determineloop performance and stability, using the stored voltage and currentwaveform information to determine voltage level values, current levelvalues, and thereby calculating power levels taken from the groupconsisting of real and apparent power levels. More steps includedisplaying the power levels on a user interface in absolute and/orrelative scales or displays, calculating the power factor betweenvoltage and current signals from the waveform signals stored in thedigital memory, and displaying the power factor on the user interface inabsolute and/or relative scales or displays.

According to another feature of the present invention, the method of thesecond embodiment includes (A) automatically resolving a zero crosspoint of the phase difference to a fine resolution by searching for aplus-to-minus or minus-to-plus change between two adjacent samples,signifying a crossing of the zero axis, (B) determining a ratio of anA/D value of one of the two adjacent samples to an absolute differencein A/D values between the two adjacent samples, and (C) multiplying theratio by a sampling period time spacing between the two adjacent samplesto determine where the zero cross point occurs, whereby a fineresolution of zero crossing time may be determined.

Additional optional steps of the second embodiment include calculating apower factor between voltage and current signals from waveform signalsstored in the digital memory, deriving a first phase angle fromzero-crossing information and a second phase angle from the powerfactor, comparing the first phase angle with the second phase angle, andgenerating a phase command for changing the waveform generator frequencyto maintain the predetermined operating point.

One might also automatically determine an actual mechanical vibrationamplitude of the electromechanical load from the feedback signal of thefeedback crystal or coil and/or compute a clamped or static capacitancevalue of the electromechanical load from waveform data stored in thedigital memory.

Another optional step of the second embodiment is determining one ormore of the following: (1) phase difference between transducer voltageand current waveforms, (2) transducer voltage waveform amplitudeinformation, (3) current waveform amplitude information, (4) feedbacksignal phase difference to either voltage or current waveform, (5)feedback signal amplitude and frequency, (6) waveform RMS voltagelevels, (7) spectral decomposition analysis of waveform information, (8)real or equivalent circuit values of piezoelectric or magnetostrictiveresonators, (9) phase error conditions, and (10) phase or amplitudechange rates.

Generally, it is contemplated that one maintains a running window ofwaveform data with respect to time in the digital memory. Correlatedphase difference commands and amplitude commands may be stored in thedigital memory.

According to additional features of the present invention, the method ofthe second embodiment further includes automatically determining errorlevels between a resonant frequency of the electromechanical load andwaveform generator output and automatically determining error levelsbetween desired resonator mechanical vibratory amplitude and actualresonator mechanical vibratory amplitude.

According to other features of the present invention, additionaloptional method steps include (i) automatically varying a phasedifference command as a function of command amplitude for optimaltracking of desired operating point of the electromechanical load, (ii)automatically maintaining control loop error in a type 0 phase lockedloop constant, independent of frequency of operation, (iii)automatically using control loop parameters in a phase locked loopcapture mode that may be different than control loop parameters in aphase locked loop locked mode, and (iv) automatically carrying out anetwork analysis automatically upon at least one of (A) detection of anabnormal operating condition and (B) user command, the computing unitexecuting a linear sweep from a first frequency to a second frequency tocompile an impedance curve and a phase curve, the computing unit storingresults of the linear sweep as data samples in the digital memory.

Further optional steps of the second embodiment of the invention includeoperating in a fast pulsing mode, wherein phase-locked-loop parametersincluding frequency and loop error are held constant while the amplifiersection is disabled during a recurring off period, so that thephase-locked-loop parameters are not updated during the off period, andwherein during a recurring on period, the amplifier section isre-enabled and the phase-locked-loop parameters are again updatedcontinuously.

A method for driving an electrostrictive or magnetostrictive transducerat or near parallel resonance comprises, in accordance with anotheraspect of the present invention, (a) applying an amplifier outputvoltage across the transducer and (b) using voltage and current feedbackto calculate a motional voltage of a transducer equivalent circuithaving capacitive, inductive and resistive components. The calculatingof the motional voltage includes subtracting a voltage drop across astatic capacitor of the transducer equivalent circuit as a function ofload and maintaining constant a theoretical voltage across motioncomponents of the transducer equivalent circuit. The method furthercomprises (c) modifying the output voltage by the calculated value ofthe motional voltage, and (d) feeding a current to the transducer in anamount to maintain the voltage drop across the transducer at themodified value of the output voltage.

An electronic generator to drive an electromechanical load comprises, ina particular embodiment of the present invention, (i) a waveformgenerator component digitally synthesizing an electrical waveform of adesired frequency, (b) an amplifier section, sensing and conditioningcircuit components, analog-to-digital converter circuitry, and acomputer or microprocessor. The amplifier section, connected at acontrol input to an output of the waveform generator component, adjustsat least one of a voltage and a current of the waveform and generates anoutput waveform of a desired type and for delivery to input leads of theelectromechanical load. The sensing and conditioning circuit componentsare operatively connected to the amplifier section for sensing andconditioning an output current and an output voltage of the amplifiersection across the electromechanical load. The analog-to-digitalconverter circuitry is connected at inputs to the sensing andconditioning circuit components. The computer or microprocessor isoperatively connected to the waveform generator component and theanalog-to-digital circuitry for analyzing voltage and currentinformation and generating a control signal fed to the waveformgenerator component. The computer or microprocessor accesses a digitalmemory for storing digitized voltage and current waveform informationfrom the amplifier section and is programmed to process the digitizedvoltage and current waveform information in the memory to determine atleast a phase difference between a motional current and voltage. Thecomputer or microprocessor is further programmed to compare thedetermined phase difference to a phase difference command and togenerate a phase error or correction signal fed at least indirectly tothe waveform generator component for causing same to adjust its outputfrequency to result in a predetermined operating point as a function ofphase. The computer or microprocessor is programmed to calculate amotional phase angle θ_(m) of the Mason model as the inverse cosine ofthe total current I times the cosine of the phase angle θ_(I) betweenthe measured voltage and current divided by the motional current I_(m):θ_(m) =a cos [(I cos θ_(I))/I _(m)]where motional current I_(m) is obtained by subtracting the current IC₀through the capacitor C₀ from the total current I, the computing meansvarying the commanded operating point (motional phase angle θ_(m)) as afunction of load.

A method for driving an electrostrictive or magnetostrictive transducerat or near resonance comprises, in accordance with a particularembodiment of the present invention, (A) applying an amplifier outputvoltage across the transducer, (B) using voltage and current feedback tocalculate a total current I and its phase angle θ_(I) with respect tothe voltage in the motional branch of the Mason model, (C) automaticallycalculating a motional phase angle θ_(m) of the Mason model as theinverse cosine of the total current I times the cosine of the phaseangle θ_(I) between the measured voltage and current divided by themotional current I_(m):θ_(m) =a cos [(I cos θ_(I))/I _(m)].where motional current I_(m) is obtained by subtracting the current IC₀through the capacitor C₀ of the Mason model from the total current I,and (D) varying a commanded operating point by varying the motionalphase angle θ_(m) as a function of load.

BRIEF DESCRIPTION OF THE DRAWINGS

FIGS. 1 and 1A-1C are graphs of impedance as a function of frequency,showing representative response curves for ultrasonic transducer andhorn assemblies. FIG. 1 d is a graph of voltage and current phaserelationship vs. frequency for ultrasonic transducer and hornassemblies.

FIG. 2 is a block diagram of a digital waveform generating circuit inaccordance with the present invention.

FIG. 3 is a block diagram of another digital waveform generating circuitin accordance with the present invention.

FIG. 4 is a diagram of an electrostrictive transducer equivalentcircuit, for transducer and vibratory probe, in parallel resonant mode.

FIG. 5 is a diagram of the equivalent circuit of FIG. 4 when the drivefrequency is at or very near the transducer's parallel resonantfrequency.

FIG. 6 is a diagram of a Mason equivalent piezo crystal model, fortransducer and vibratory probe.

FIG. 7 is a phasor diagram of current components shown in FIG. 6 andtheir phase angles relative to voltage.

DETAILED DESCRIPTION

As shown in FIG. 2, an electrical waveform generator for driving anelectromechanical load 26 comprises a digital signal processor 10, awaveform generator component (W.G.) 12, an amplifier section 14 with afilter network 16, sensing and conditioning (S & C) circuit components18 and 20, and analog-to-digital converter circuitry 22 and 24. Digitalprocessor 10 is a microcomputer, microcontroller or, preferably, adigital signal processing (DSP) controller chip. Waveform generatorcomponent 12 is a operationally connected to the output data bus of theDSP 10 for generating voltage output signals having a frequency that isa function of the data output of DSP 10.

Amplifier section 14 may be of an analog type or, preferably, aswitching amp type. Amplifier section 14 is connected at a control input25 to an output of waveform generator component 12 for variablyincreasing the frequency of the waveform in response to a signal on thecontrol input. A rail supply 34 or other control inputs may be used tovary the output signal of amplifier 14. The output signal level may varyin amplitude or in pulse width. Amplifier 14 contains matching or filtercircuits 16 to condition the output to a desired shape, such as, but notlimited to, a sine wave and to deliver it to input leads or terminals ofthe electromechanical load 26, for example, an ultrasound transducer.Such a transducer may be a single or multiple crystals, of the LangevinSandwich type, a folded cylinder type or other such device well known tothe art.

Thus, DSP 10 generates driving frequency and amplitude control signalsthat are fed to amplifier section 14 via waveform generator component 12and control input 25 and via rail supply 34 and control input 32,respectively. Waveform generator component 12 responds to data input bythe DSP 10 with commensurate frequency output signals. The output ofrail supply 34 varies as a function of a PWM duty cycle. Amplifiersection 14 drives the ultrasonic transducer 26 at the frequency input bywaveform generator component 12 and the amplitude input by rail supply34.

Sensing and conditioning circuit components 18 and 20 are operativelyconnected to filter network 16 and across electromechanical load ortransducer array 26 for sensing an output voltage (V) and an outputcurrent (I) of filter network 16 across the load. Analog-to-digitalconverter circuits 22 and 24 are connected at an input to sensing andconditioning circuit components 18 and 20 and at an output to processor10. Sensing and conditioning circuit components 18 and 20 andanalog-to-digital converter circuits 22 and 24 cooperate to inform DSP10 as to the amplitude vs. time of the voltage and current drive signalsin and through the ultrasonic transducer load 26. The amplitude of thevoltage drive signal is derived from the output of the A/D converters 22and 24 directly.

A user interface circuit 30 is coupled to DSP 10 to enable a user toinput, as independent variables, transducer output amplitude levels andnominal frequency of operation and/or other such variables as may berequired for a particular application.

DSP 10 includes an integral or separate digital memory 28 for storingdigitized voltage and current waveform information. DSP 10 samples thedigital representation of the voltage and current by means of sensingand conditioning circuit components 18 and 20 and analog-to-digitalconverter circuits 22 and 24 at a rate that is greater than at leasttwice the frequency of operation of the waveform generator component 12and preferably, at a much higher frequency than that. One or more cyclesof operation are stored for computation and processing in digital memory28.

DSP 10 is programmed to process the digitized voltage and currentwaveform information in memory 28 to determine at least a phasedifference between voltage and current waveforms. DSP 10 is furtherprogrammed to compare the determined phase difference to a phasedifference command (reference phase) and to generate a phase error orcorrection signal fed at least indirectly to waveform generatorcomponent 12 for causing the same to adjust its output frequency tomaintain a predetermined phase between voltage (V) and current (I). DSP10 is additionally programmed to compare voltage and/or currentamplitudes to a voltage amplitude command (reference voltage) and acurrent amplitude command (reference current) and to generate anamplitude error signal applied at least indirectly to a control input 32of amplifier section 14 via rail supply 34 for inducing the amplifiersection to change its output amplitude to result in a predeterminedamplitude error level for the voltage and/or current waveform.

DSP 10 is programmed to (a) calculate a motional current of ultrasonictransducer 26 from the waveform data stored in memory 28, (b) compute aclamped or static capacitance value of ultrasonic transducer 26 fromwaveform data stored in memory 28, and (c) determine resonantfrequencies of ultrasonic transducer 26 from the waveform data stored inmemory 28, the calculated motional current and the computed clamped orstatic capacitance value. DSP 10 may be also programmed to determine anactual mechanical vibration amplitude of ultrasonic transducer 26 fromthe calculated motional current.

The amplitude of vibration of ultrasonic transducer 26 is proportionalto the motional component of the current. The motional current throughtransducer 26 is defined as current through the theoretical equivalentload motional impedance Z_(m). The motional current may be calculated bythe vector subtraction, from the total current, of the current throughthe known clamped or static capacitance value of ultrasonic transducer26. The clamped capacitance value may be measured or calculated withtransducer 26 at rest and is entered into memory 28 as a constant byexciting the transducer off resonance with an arbitrary voltage,sampling voltage and total current instantaneously and using thealgorithm C_(o)=I_(t)/j{acute over (ω)}V. This motional currentcalculation using the clamped capacitance value is entered into memory28. Alternatively, if a single known transducer is to be used, theclamped capacitance value may be determined with commercially availablecapacitance meters and then that value may be programmed into memory 28by the user or designer. Further calculations allow DSP 10 to determinethe amplitude of the motional current, from analysis of the theoreticalmodels known to the art, such as the KLM or Mason models of transducerequivalent circuits.

The operating point of ultrasonic transducer 26 may be determined by thephase angle between voltage and either the total current or motionalcurrent. DSP 10 determines the frequency operating point of transducer26 by analyzing the phase angle between the transducer drive voltagesignal and either transducer current or transducer motional current. Ifthe operating point is not at the desired conditions, the computingmeans will derive an error signal. This error signal is then sent to thewaveform generator component 12, which will increase or decrease thefrequency until the phase angle is as desired or (at least) one thatwill generate a minimum loop error.

The amplitude operating point will be determined by DSP 10, which willdevelop an error signal proportional to the difference in the desiredmotional current or total current from the actual. This error signalwill be sent to rail supply 34 to adjust the drive signal levels. Sucherror signals are derived from hardware or software loop filters (seediscussion below), which are known to the art.

If the desired operating point is to be at series resonance, the voltageand current (total or motional) signals must be virtually in phase, forexample, in the case of series resonance or near the point of 0 degreesphase difference and the motional current will be a maximum for a givenamplitude of drive signal. If the desired operating point is to be atanti-resonance or parallel resonance, then the phase between the voltageand motional current is also virtually 0, but the amplitude of themotional current will be a minimum, for given amplitude of drive signal.Alternatively, the user or designer may input a desired operating point,which differs from that of either series or anti-resonance.

The control algorithms that maintain operation at or near the resonanceof transducer 26 and maintain vibration amplitude as commanded by adesigner or user are implemented with software loop filters. DSP 10 mayincorporate in software a first loop filter for receiving the phasesignal and applying a first phase error signal to waveform generatorcomponent 12 and a second loop filter for receiving the differencebetween feedback and commanded phase and applying a second error signalto rail supply 34. The first filter and the second filter mayalternatively be realized by hardware.

In the case of software loop filters, DSP 10 maintains windows of looperror in memory 28. Based thereon, DSP 10 determines control loopperformance and makes appropriate adjustments to loop filter parameterssuch as gain, lead and lag or PID parameters as is well known in theart. DSP 10 stores samples of loop error on start-up, which is ofparticular concern in feedback control performance evaluation. DSP 10can interrogate or process the signals associated with the loop windowof error that occurred at start up of one ultrasonic “on” period uponthe completion of a subsequent off period, where ultrasonic operationhas ceased, such as in the case of a user releasing a depression of afoot switch. An adaptive algorithm is thus implemented such that if DSP10 determines that the loop response is too underdamped, as one example,the DSP can reduce the gain, or adjust lead or lag as appropriate insoftware. The windows of loop error can also be used to determine aheavily loaded transducer condition exists wherein the phase curve hasflattened to a condition wherein the commanded phase is unattainable.

When this occurs in a conventional system, such a system will normallyrespond by increasing the error to the oscillator to the point where theoperating point will cross over to the other resonance point (seriesresonance to parallel resonance or vice versa). With this condition, theloop error correction sense will be in the wrong direction, causing theoperating point, or frequency, to shoot over to the end of the systemfrequency response in the wrong direction. This is why most conventionalsystems have a restart controller operated by a frequency limit windowthat is triggered by this condition. DSP 10 can respond to thiscondition by interrogating an area of memory 28 where the frequencyerror samples are stored, enabling a history of loading to be derived.If an overload condition as above is detected, the digital electricalwaveform generator of FIG. 2 may try to stay at an optimal maximum powerfrequency and alarm the user instead of continuously restarting with nouseful power delivery.

Voltage, current and amplitude samples stored in memory 28 may alsoenable DSP 10 to detect error conditions such as an arcing, damaged, orbroken transducer.

To address the condition of a loaded transducer with a well-knownflattened phase transfer function, the phase command may be varied as afunction of amplitude command. For example, in the case where theamplitude command is low, and the transducer is immersed in a liquid,the lack of cavitation at low amplitude will cause the phase transferfunction to remain flattened through capture and lock of the PLL. Theinvention will lower the phase angle command in proportion with loweramplitude commands.

DSP 10 is further programmed to (1) store, in memory 28, samples ofcontrol loop error during start up transients, (2) analyze the samplesof control loop error to determine loop performance and stability, (3)use the stored voltage and current waveform information to determinevoltage level values, current level values, and thereby calculate powerlevels taken from the group consisting of real and apparent powerlevels, (4) display the power levels on user interface 30 in absoluteand/or relative scales or displays, (5) calculate the power factorbetween voltage and current signals from the waveform signals stored inmemory 28, and (6) display the power factor on the user interface 30 inabsolute and/or relative scales or displays.

The power factor of the output, known to the art as the cosine of thephase angle difference between the voltage and current signals may beused to determine that a distorted transducer voltage or currentwaveform exists by using the equationØ_(app)=Cos⁻¹ (watts/VA)where Ø_(app) is the apparent phase angle between transducer voltages.This value is then compared against the phase detected by means of thezero crossing information (see following paragraph). If the two valuesare not in agreement, a distorted wave may be the cause. DSP 10 wouldthen generate a phase command that would move the drive frequency up ordown until the two values are in reasonable agreement.

The phase angle between the voltage drive signal and the current signalis determined by means of zero crossing points in the stored waveformsor in the frequency domain by complex Fourier analysis. In the formercase, DSP 10 resolves the zero cross points for the determination ofphase and frequency by considering the samples in memory across zero tobe a triangle. The ratio of the A/D values of the point below zero tothe point above zero can be applied to the sampling period along zero toresolve the zero cross to the space on the horizontal or time axisbetween the sample periods. More specifically, DSP 10 is programmed to(i) resolve a zero cross point of the phase difference to a fineresolution by searching for a plus-to-minus or minus-to-plus changebetween two adjacent samples, signifying a crossing of the zero axis,(ii) determine a ratio of an A/D value of one of the two adjacentsamples to an absolute difference in A/D values between the two adjacentsamples, and (iii) multiply the ratio by a sampling period time spacingbetween the two adjacent samples to determine where the zero cross pointoccurs, whereby a fine resolution of zero crossing time may bedetermined.

DSP 10 is further programmed to (A) calculate a power factor betweenvoltage and current signals from waveform signals stored in memory 28,(B) derive a first phase angle from zero-crossing information and asecond phase angle from the power factor, (C) compare the first phaseangle with the second phase angle, and (D) generate a phase command forchanging the output frequency of waveform generator component 12 toresult in the commanded phase to be achieved.

DSP 10 is programmed to determine one or more of the following: waveformamplitude information, waveform RMS voltage levels, spectraldecomposition analysis of waveform information, real or equivalentcircuit values of piezoelectric or magnetostrictive resonators, andphase error conditions, and phase or amplitude change rates.

DSP 10 may maintain a running window of waveform data with respect totime in memory 28 and store correlated phase difference commands andamplitude commands.

DSP 10 is supplementarily programmed to determine error levels between aresonant frequency of ultrasonic transducer 26 and output of waveformgenerator component 12 and to determine error levels between desiredresonator mechanical vibratory amplitude and actual resonator mechanicalvibratory amplitude.

DSP 10 is optionally programmed to vary a phase difference command as afunction of command amplitude for optimal tracking of desired operatingpoint of ultrasonic transducer 26, to ensure acceptable performance as afunction of amplitude and load.

To address the common problem of operating point variation as a functionof resonant frequency in a PLL control strategy, a digital signalprocessor can deploy a Type 0 loop filter in software, wherein the looperror is always adjusted to a constant loop error, independent offrequency of operation, so that the operating point is always the same(point of operation on the phase transfer function). This mode ofoperation would be analogous to adjusting the frequency differencebetween F₀ (the free running frequency) and the running frequency of ahard-wired PLL to always be the same value. This is so that more or lessloop error as required to drive the frequency from F₀ to resonance as afunction of frequency difference between F₀ and resonance always ends upthe same. The system may also use integrators to achieve the same effectin Type 1 or Type 2 loop filters.

In order to effect a fast capture and stable operation after lock, DSP10 also uses control loop parameters in a phase locked loop capture modethat may be different than control loop parameters in a phase lockedloop locked mode. The PLL loop parameters, such as loop gain, lead, andlag or PID are not constant between the states where the unit is incapture mode and once lock is attained. An example may be that loop gainis higher when capturing to achieve a faster capture, and then loweredwhen locked to attain for very stable operation.

DSP 10 is additionally programmed to carry out a network analysisautomatically upon (i) detection of an abnormal operating condition or(ii) user command. In that event, DSP 10 executes a linear sweep from afirst frequency to a second frequency, i.e., across the window ofoperation of the system, to compile an impedance curve and a phasecurve. DSP 10 stores results of the linear sweep as data samples inmemory 28. DSP 10 thus tabulates a buffer of impedance and phase at eachfrequency point. DSP 10 may also look at waveforms and do an FFT orother such calculation to determine the integrity of said feedbacksignals. The unit thus functions as both a network analyzer (frequencydomain), and an oscilloscope (time domain) for diagnostic evaluation.

If required, DSP 10 may be programmed to operate in a fast pulsing mode,wherein the ultrasound is rapidly started and then stopped repeatedly.In this mode, phase-locked-loop parameters including frequency and looperror are held constant while amplifier section 14 is disabled during arecurring off period, so that the phase-locked-loop parameters are notupdated during the off period, and wherein during a recurring on period,amplifier section 14 is re-enabled and the phase-locked-loop parametersare again updated continuously. In other words, DSP 10 freezes the PLLloop parameters at the point where ultrasound delivery is suspended.Ultrasound delivery is suspended by turning off amplifier 14. In thisway, at the point where ultrasound is once again to be delivered, nocapture is required. The PLL continues where it left off. The loop isanalyzed as described and adjusted to maintain stable performance onlyafter a stable feedback signal is obtained. Since the amplitude controlloop is much faster than the PLL, the response is much faster.

The operation of the waveform generator circuit of FIG. 2 is generallyin accordance with the programming of DSP 10.

FIG. 3 illustrates an electrical waveform generator for driving anelectromechanical load 36 having at least one feedback crystal or coil(FC) 38. The piezoelectric crystal or coil 38 will generate a voltageand current as it is being mechanically vibrated. This signal willchange amplitude in direct proportion to the amplitude changes in thevibration of transducer 36 and the frequency of the crystal or coil willbe the same as the frequency of vibration of the transducer itself. Suchschemes are well known to the art.

By comparing the output of the feedback device 38 to the drive voltageor current, a phase difference may be obtained in the time domain. A DSP40 (FIG. 3) may compare this phase difference against a commanded orpredetermined phase difference to calculate a phase error and set aphase error command to a waveform generator component 42 throughconditioning means. The frequency of the synthesized waveform will bevaried up or down until the phase error is zero or as commanded.Likewise, the amplitude of the feedback signal may be compared to acommanded signal level. In this way, the amplifier output signal levelmay be adjusted to maintain the amplitude of the transducer againstvarying loads or change in amplitude commands. In cases where thefeedback element is provided, the system would not necessarily berequired to calculate motional information or control on transducercurrent and voltage phase differences. Such transducer current andvoltage information may be desired, however to determine power and powerfactor information, for instance.

The waveform generator of FIG. 3 in the main incorporates the featuresdiscussed above with respect to FIG. 2. Differences between theembodiments of FIGS. 2 and 3 arising from the utilization of feedbackcrystal or coil 38 will be apparent from the discussion below.

The waveform generator of FIG. 3 comprises a digital signal processor40, waveform generator component (W.G.) 42, an amplifier section 44,first sensing circuit components 46 and 48, second sensing circuitcomponents 50 and 52, and analog-to-digital converter circuitry 53-56.Waveform generator component 42 is connected to an output of processor40 for digitally synthesizing an electrical waveform of a desiredfrequency in response to a signal from the processor. Amplifier section44 is connected at a control input 58 to an output of waveform generatorcomponent 42 and increases at least one of a voltage and a current ofthe waveform in response to a signal from a rail supply 66 connected toa control input 64. Amplifier section 44 includes a filter network 60 toconvert an output waveform of the amplifier section to a desired typeand to deliver it to input leads of electromechanical load 36. Firstsensing circuits 46 and 48 are operatively connected to filter network60 for sensing an output voltage and an output current of the filternetwork across electromechanical load 36. Second sensing circuits 50 and52 are operatively connected to feedback crystal or coil 38 for sensingthe output of the feedback crystal or coil. Analog-to-digital convertercircuits 53-56 are connected at inputs to the first and the secondsensing circuit components 46, 48, 50, 52 and at an output to processor40. Processor 40 includes a digital memory 62 for storing digitizedvoltage and current waveform information from filter network 60 anddigitized voltage and current waveform information from the feedbackcrystal or coil 38. Processor 40 is programmed to process the digitizedvoltage and current waveform information stored in memory 62 todetermine at least a phase difference between a feedback signal fromfeedback crystal or coil 38 and the transducer voltage or currentwaveform, that is the voltage or current across electromechanical load36. Processor 40 is further programmed to compare the determined phasedifference to a phase difference command (reference phase) and togenerate a phase error or correction signal fed at least indirectly towaveform generator component 42 for causing the waveform generatorcomponent to adjust its output frequency to maintain a predeterminedphase between voltage and current. Processor 40 is additionallyprogrammed to compare the amplitude of the signal from feedback crystalor coil 38 to a feedback amplitude command (reference amplitude) andgenerate an amplitude error signal applied rail supply 66 for inducingthe same to change the output amplitude of amplifier section 44 toresult in a predetermined amplitude error level.

This electrical waveform generator further comprises (a) a first filterrealized as software of processor 40 for generating a first signal inaccordance with the computed phase error and applying the first signalto waveform generator component 42, and (b) a second filter realized assoftware of processor 40 for generating a second signal in accordancewith the amplitude error and applying the second signal to rail supply66. The first filter and the second filter may alternatively be realizedby hardware.

Processor 40 is further programmed to store, in memory 62, samples ofcontrol loop error during start up transients, to analyze the samples ofcontrol loop error to determine loop performance and stability, and touse the stored voltage and current waveform information to determinevoltage level values, current level values, and thereby calculate powerlevels taken from the group consisting of real and apparent powerlevels. Also, processor 40 may be programmed to display the power levelson a user interface 68 in absolute and/or relative scales or displays,to calculate the power factor between voltage and current signals fromthe waveform signals stored in memory 62, and to display the powerfactor on user interface 68 in absolute and/or relative scales ordisplays.

Processor 40 is additionally programmed to resolve a zero cross point ofthe phase difference to a fine resolution by searching for aplus-to-minus or minus-to-plus change between two adjacent samples,signifying a crossing of the zero axis, to determine a ratio of an A/Dvalue of one of the two adjacent samples to an absolute difference inA/D values between the two adjacent samples, and to multiply the ratioby a sampling period time spacing between the two adjacent samples todetermine where the zero cross point occurs, whereby a fine resolutionof zero crossing time may be determined. Processor 40 may calculate apower factor between voltage and current signals from waveform signalsstored in memory 62, to derive a first phase angle from zero-crossinginformation and a second phase angle from the power factor, to comparethe first phase angle with the second phase angle, to generate a phasecommand for changing waveform generator component 42 frequency tomaintain the predetermined operating point, i.e., the predeterminedphase between voltage and current.

Processor 40 is also programmed to determine an actual mechanicalvibration amplitude of electromechanical load 36 from the feedbacksignal of feedback crystal or coil 36.

Processor 40 may be further programmed to compute a clamped or staticcapacitance value of electromechanical load 36 from waveform data storedin memory 62.

Processor 40 may be further programmed to determine one or more of thefollowing: (1) phase difference between transducer voltage and currentwaveforms, (2) transducer voltage waveform amplitude information, (3)current waveform amplitude information, (4) feedback signal phasedifference to either voltage or current waveform, (5) feedback signalamplitude and frequency, (6) waveform RMS voltage levels, (7) spectraldecomposition analysis of waveform information, (8) real or equivalentcircuit values of piezoelectric or magnetostrictive resonators, (9)phase error conditions, and (10) phase or amplitude change rates.

Processor 40 may maintain a running window of waveform data with respectto time in memory 62.

Processor 40 is further programmed to determine error levels between aresonant frequency of electromechanical load 36 and output of waveformgenerator component 42 and to determine error levels between desiredresonator mechanical vibratory amplitude and actual resonator mechanicalvibratory amplitude.

Correlated phase difference commands and amplitude commands may bestored in memory 62.

Processor 40 is also programmed to (i) vary a phase difference commandas a function of command amplitude for optimal tracking of desiredoperating point of electromechanical load 36, (ii) maintain control looperror in a type 0 phase locked loop constant, independent of frequencyof operation, (iii) use control loop parameters in a phase locked loopcapture mode that may be different than control loop parameters in aphase locked loop locked mode, and (iv) carry out a network analysisautomatically upon either (A) detection of an abnormal operatingcondition or (B) user command. Processor 40 executes a linear sweep froma first frequency to a second frequency to compile an impedance curveand a phase curve. Processor 40 stores results of the linear sweep asdata samples in memory 62.

Processor 40 may be programmed to operate in a fast pulsing mode,wherein phase-locked-loop parameters including frequency and loop errorare held constant while amplifier section 44 is disabled during arecurring off period, so that the phase-locked-loop parameters are notupdated during the off period, and wherein during a recurring on period,amplifier section 44 is re-enabled and the phase-locked-loop parametersare again updated continuously.

The embodiments of FIGS. 2 and 3, whether a feed back crystal 38 is usedor not, has the capacity to analyze voltage and current waveformscreated by the generator. Therefore, it is possible with the presentinvention to display voltage, current, impedance and phase in the sameway as a commercial network analyzer or oscilloscope, on a screenattached locally to the generator enclosure or, with communication meansknown to the art, on a remote display. Likewise, other outputs ofwaveform analysis may be displayed.

Along with the display, alarm features may be programmed in, such as butnot limited to impedance limits or operating frequency limits. If thecalculated values are outside the preprogrammed specs, actions may betaken such as sounding an audible alarm, lowering amplitude commandsignals or other such user or designer programmed actions.

The circuit and control software described above provide satisfactoryresults in running an electrostrictive vibratory load (transducer andaccompanying probes) 26 or 36, especially in series resonant mode. Ithas also been shown to provide good results in driving anelectrostrictive transducer at or near parallel (open circuit) resonancemode.

However, an improvement may be made to the performance of the systemwhen it is desired to run in parallel resonance in terms of regulationof the output vibratory amplitude of the system under increasing loads.

An electrostrictive transducer equivalent circuit in parallel resonantmode may be modeled as shown in FIG. 4.

When the drive frequency is at or very near the transducer's parallelresonant frequency, the L_(p) and C_(p) reactances will cancel and leavethe equivalent circuit to be as shown in FIG. 5. The circuit of FIG. 5can be categorized as a voltage divider, with the sum of the voltagedrop across capacitor C_(o) (due to its reactance) and that acrossparallel circuit of resistors R_(i) and R_(m) equaling the drive voltageV_(d).

As is known in the art, when the external mechanical load on atransducer running at parallel resonance is increased, such as whenpressing the tip of a vibrator harder against firm tissue in a surgicalsystem, the resistance of the motional resistor R_(m) gets smaller,while resistance R_(i) will remain constant. This causes greater currentto flow through the motional resistor R_(m). Since the sum of thevoltage drops across the capacitor C_(o) and resistor circuit R_(i) andR_(m) must be equal to voltage V_(d), a greater voltage drop across thestatic capacitor C_(o) is apparent. Therefore, the voltage acrossmotional resistance R_(m) will decrease.

In order to maintain constant amplitude in the ultrasonic vibrator, aconstant voltage should be maintained across the motional components. Inthe above-described circuit design, the amplitude of vibration will getsmaller in proportion to the smaller drive voltage across the motionalcomponents as the tips are loaded.

It is desired, therefore, to have an operational control method whereinthe voltage across the motional components remains substantiallyconstant as the resistance of motional resistor R_(m) lowers.

In prior art that relied on analog circuitry to control theelectrostrictive transducer, an external inductor would be placed inseries with the transducer input leads. This inductor's value would becalculated by measuring the static capacitance of the transducer andusing known electronic theory to create a circuit wherein the reactanceof the static capacitance of the transducer would be canceled by thereactance of the inductor at or near the parallel resonance frequency ofthe transducer. Then, the impedance of the capacitor C_(o) would beeffectively zero and the voltage across the motional components of thetransducer would be constant. This is described in detail in U.S. Pat.No. 3,432,691 to Shoh. Although the method described by Shoh iseffective, it has the limitation that additional components are neededfor the product. More importantly, the method of Shoh has a very narrowoperating frequency bandwidth because the reactance of the inductor andcapacitor would not cancel each other as the drive frequency is movedaway from the original design frequency. Therefore, the generatorcomponent values would need to be changed for each desired operatingfrequency.

An improvement may be made using the DSP control scheme describedhereinabove. When it is desired to run in parallel resonance mode,digital signal processor 40 provides a fixed drive voltage to thetransducer 36. The auto gain control feature will vary the current driveto keep the voltage constant at differing load conditions. In thisscheme, the output amplitude of the transducer 36 will vary as describedabove. However, digital signal processor 40 can also calculate thecapacitance C_(o) of the transducer 36. Improvement resides in the useby digital signal processor 40 of an algorithm to calculate theimpedance of the static (or clamped) capacitor (C_(o)) of transducer 36at the drive frequency. This algorithm uses the known equation forreactive impedance Xc_(o):Xc _(o)=½ΠfC _(o)The feedback means provides data on the current I and the voltage of thedrive signal. Therefore, processor 40 may calculate the voltage dropV_(Co) across the capacitor C_(o) of the equivalent circuit by theequation:V _(Co) =I*Xc _(o) =I/(2ΠfC _(o))

By means of this new algorithm, processor 40 can compensate for thetheoretical voltage drop across capacitor C_(o) as a function of load byincreasing or decreasing the drive voltage over that of the originalcommand by the value of Vc_(o) and thus maintain the theoretical(motional) voltage across the transducer equivalent circuit motionalcomponents constant at the reference or command voltage, not above orbelow the voltage command. In order to maintain stability of the system,the amount of drive voltage increase or decrease may not exactly equalthe theoretical Vc_(o), but may be varied empirically for best operatingmode.

In this scheme, both the drive voltage and current are varied as loadconditions demand. For example, as the load on the transducer 36increases, the current will increase to keep the voltage constant acrossthe new lower impedance. However, processor 40 will set a slightlyhigher voltage command as well, to compensate for the increased C_(o)impedance. Upon a lowering of the mechanical load, the converse will betrue. Processor 40 will demand a slightly lower voltage across thetransducer 36 and the current will then reduce commensurately. In thisway, the voltage across the theoretical motional components is keptsubstantially constant. It should be understood that the same controllogic may be applied to generators running magnetostrictive type devicesas opposed to electrostrictive devices.

Q, which is derived from the word “quality,” is a numericalcharacterization of sharpness of the curve in the graph of impedance asa function of frequency (see FIGS. 1 and 1A-1C). Q may be calculated asthe quotient of the series resonance frequency over the differencebetween the parallel resonance frequency and the series resonancefrequency. Generally it is recognized that the Q of the ultrasonictransducer changes as a function of load. The higher the load, the lowerthe Q value. The Q value also varies as a function of how close toresonance the operating point is. The closer the operating point is toresonance, the higher the Q.

In calculating the voltage drop V_(Co) across the capacitor C_(o) of theequivalent circuit C_(o) using the above equation for V_(Co), thecapacitance C_(o) is determined at each command for ultrasound (at eachactivation of the system) prior to PLL capture. The computer isprogrammed to take impedance readings (V_(rms)/I_(rms)@f=f_(x)) atsuccessive frequency points over a predetermined range or band offrequencies. The computer determines if the response is flat within areasonable tolerance. Response flatness would indicate that there are noresonances in the selected band of frequencies. If there are resonances,the impedance will vary as a series and then a parallel resonance arepassed through. If the routine (under which the computer operates) findsresonances, the routine moves to another prescribed band of frequenciesuntil it finds one devoid of resonances. When a band of frequenciescontaining no resonances is found, the routine performs a spectraldecomposition (DFT or FFT) of the electrical waves being fed back (orig.art) at a frequency at the mid point of this frequency band to assurethat the waves are sinusoidal. Sinusoidal fidelity or low harmonicdistortion is necessary for a simple and fast calculation of C_(o). Theroutine then determines the relative phase between the current andvoltage waves to be sure they are at or close to 90 degrees. Thisassures a capacitive load. The routine then determines C_(o) by means ofthe voltage, current, and frequency (use of frequency is possible by lowdistortion sin waves) information (C=I/[jωV]), as is well known in theart.

The value of C_(o) so computed then used in the equation to calculatethe voltage drop V_(Co) across the capacitor C_(o) of the equivalentcircuit C_(o) by using the equation:V _(Co) =I*Xc _(o) =I/(2ΠfC _(o)),the value V_(Co) being used to “compensate for the theoretical voltagedrop across capacitor C_(o) as a function of load by increasing ordecreasing the drive voltage over that of the original command by thevalue of Vc_(o) and thus maintain the theoretical voltage across thetransducer equivalent circuit motional components constant.”

In another modeling of a digital waveform generating circuit withfeedback (FIG. 3), for improving the performance of the system whetherrun in series or in parallel resonance under increasing loads, FIG. 6shows a Mason equivalent piezo crystal model with total current I,capacitor current IC₀, and motional current I_(m). FIG. 7 shows a phasordiagram of current components shown in FIG. 6 and their phase anglesrelative to voltage. By known computational means using feedback data,digital signal processor 40 computes the total current I and its phaseangle θ_(I) with respect to the voltage in the motional branch of theMason model. The motional phase angle θ_(m) is the inverse cosine of thetotal current I times the cosine of the phase angle θ_(I) between themeasured voltage and current divided by the motional current I_(m):θ_(m) =a cos [(I cos θ_(I))/I _(m)].Motional current I_(m) is obtained by vector subtraction of the currentIC₀ through the capacitor C₀ from the total current I.

Digital signal processor 40 calculates load by determining voltage orloop error and varies the commanded operating point (motional phaseangle θ_(m)) as a function of load. As the converter is loaded, the PLLand AGC control loops can be stable at operating points that areincreasingly closer to resonance.

It is known that one cannot operate a digital waveform generator circuitalways at resonance because instability arises for unloaded conditions.The Q value is too high at resonance. The system with feedback controlas described above with reference to FIGS. 6 and 7 allows running justoff resonance in unloaded conditions and moving even closer towardsresonance as load increases. Running closer to resonance reduces thevoltage increase that would otherwise be required to drive the load.This is particularly advantageous where the transducer crystal has amaximum voltage tolerance (e.g., 1400 volts). The system maintains agiven vibration amplitude with the lowest voltage possible and alsooptimizes the ability to maintain commanded amplitude under load due tothe additional headroom before maximum voltage of the handpiece isreached.

Although the invention has been described in terms of particularembodiments and applications, one of ordinary skill in the art, in lightof this teaching, can generate additional embodiments and modificationswithout departing from the spirit of or exceeding the scope of theclaimed invention. Accordingly, it is to be understood that the drawingsand descriptions herein are proffered by way of example to facilitatecomprehension of the invention and should not be construed to limit thescope thereof.

What is claimed:
 1. An electronic generator to drive anelectromechanical load, comprising: a. a waveform generator componentdigitally synthesizing an electrical waveform of a desired frequency; b.an amplifier section connected at a control input to an output of saidwaveform generator component, said amplifier section adjusting at leastone of a voltage and a current of said waveform and generating an outputwaveform of a desired type and for delivery to input leads of theelectromechanical load; e. computing means operatively connected atleast indirectly to said waveform generator component for analyzingvoltage and current information and generating a control signal fed tosaid waveform generator component; g. said computing means beingprogrammed to process voltage and current waveform information todetermine at least a phase difference between voltage and currentwaveforms, h. said computing means being further programmed to comparethe determined phase difference to a phase difference command and togenerate a phase error signal fed at least indirectly to said waveformgenerator component for causing same to adjust its output frequency toresult in a predetermined operating point as a function of phase, i.said computing means being additionally programmed to compare at leastone of voltage and current amplitude respectively to a voltage amplitudecommand and a current amplitude command and generate an amplitude errorsignal for inducing said amplifier section to change its outputamplitude to result in a predetermined amplitude for a respective one ofsaid voltage and current waveforms.
 2. The electrical waveform generatordefined in claim 1 wherein said computing means accesses a memory forstoring voltage and current waveform information, said computing meansbeing programmed to calculate a motional current of saidelectromechanical load from the waveform data stored in said memory. 3.The electrical waveform generator defined in claim 2 wherein saidcomputing means is further programmed to compute a clamped or staticcapacitance value of said electromechanical load from waveform datastored in said memory.
 4. The electrical waveform generator defined inclaim 3 wherein said computing means is additionally programmed todetermine resonant frequencies of said electromechanical load from thewaveform data stored in said memory, the calculated motional current andthe computed clamped or static capacitance value.
 5. The electricalwaveform generator defined in claim 2 wherein said computing means isalso programmed to determine an actual mechanical vibration amplitude ofsaid electromechanical load from the calculated motional current.
 6. Theelectrical waveform generator defined in claim 1, further comprisingfirst filter means for generating said phase error signal and applying afirst error signal to said waveform generator component, also comprisingsecond filter means for generating said amplitude error signal andapplying a second error signal to said control input of said amplifiersection.
 7. The electrical waveform generator defined in claim 6 whereinsaid first filter means and said second filter means are each realizedby at least one of software and hardware.
 8. The electrical waveformgenerator defined in claim 1 wherein said computing means is furtherprogrammed to store, in a memory, samples of control loop error duringstart up transients.
 9. The electrical waveform generator defined inclaim 8 wherein said computing means is further programmed to analyzesaid samples of control loop error to determine loop performance andstability.
 10. The electrical waveform generator defined in claim 1wherein said computing means is further programmed to use stored voltageand current waveform information to determine voltage level values,current level values, and thereby calculate power levels taken from thegroup consisting of real and apparent power levels.
 11. The electricalwaveform generator defined in claim 10 wherein said computing means isfurther programmed to display said power levels on a user interface inabsolute and/or relative scales or displays.
 12. The electrical waveformgenerator defined in claim 11 wherein said computing means is furtherprogrammed to calculate the power factor between voltage and currentsignals from waveform signals stored in a memory.
 13. The electricalwaveform generator defined in claim 12 wherein said computing means isfurther programmed to display said power factor on the user interface inabsolute and/or relative scales or displays.
 14. The electrical waveformgenerator defined in claim 1 wherein said computing means is furtherprogrammed to resolve a zero cross point of said phase difference to afine resolution by searching for a plus-to-minus or minus-to-plus changebetween two adjacent samples, signifying a crossing of the zero axis, todetermine a ratio of an A/D value of one of said two adjacent samples toan absolute difference in A/D values between said two adjacent samples,to multiply said ratio by a sampling period time spacing between saidtwo adjacent samples to determine where said zero cross point occurs,whereby a fine resolution of zero crossing time may be determined. 15.The electrical waveform generator defined in claim 14 wherein saidcomputing means is further programmed to calculate a power factorbetween voltage and current signals from waveform signals stored in amemory, to derive a first phase angle from zero-crossing information anda second phase angle from said power factor, to compare said first phaseangle with said second phase angle, to generate a phase command or othercorrective algorithms for changing the waveform generator frequency tomaintain said predetermined operating point.
 16. The electrical waveformgenerator defined in claim 1 wherein said computing means is furtherprogrammed to determine at least one of the group consisting of waveformamplitude information, waveform RMS voltage levels, spectraldecomposition analysis of waveform information, real or equivalentcircuit values of piezoelectric or magnetostrictive resonators, andphase error conditions, and phase or amplitude change rates.
 17. Theelectrical waveform generator defined in claim 1 wherein said computingmeans is programmed to maintain a running window of waveform data withrespect to time in a memory.
 18. The electrical waveform generatordefined in claim 1 wherein said computing means is further programmed todetermine error levels between a resonant frequency of saidelectromechanical load and waveform generator output.
 19. The electricalwaveform generator defined in claim 1 wherein said computing means isfurther programmed to determine error levels between desired resonatormechanical vibratory amplitude and actual resonator mechanical vibratoryamplitude.
 20. The electrical waveform generator defined in claim 1wherein correlated phase difference commands and amplitude commands arestored in a memory.
 21. The electrical waveform generator defined inclaim 1 wherein said computing means is further programmed to vary aphase difference command as a function of command amplitude for optimaltracking of desired operating point of said electromechanical load. 22.The electrical waveform generator defined in claim 1 wherein saidcomputing means is further programmed to maintain control loop error ina type 0 phase locked loop constant, independent of frequency ofoperation.
 23. The electrical waveform generator defined in claim 1wherein said computing means is further programmed to use control loopparameters in a phase locked loop capture mode that may be differentthan control loop parameters in a phase locked loop locked mode.
 24. Theelectrical waveform generator defined in claim 1 wherein said computingmeans is further programmed to carry out a network analysisautomatically upon at least one of (i) detection of an abnormaloperating condition and (ii) user command, said computing meansexecuting a linear sweep from a first frequency to a second frequency tocompile an impedance curve and a phase curve, said computing meansstoring results of said linear sweep as data samples in a memory. 25.The electrical waveform generator defined in claim 1 wherein saidcomputing means is further programmed to operate in a fast pulsing mode,wherein phase-locked-loop parameters including frequency and loop errorare held constant while said amplifier section is disabled during arecurring off period, so that said phase-locked-loop parameters are notupdated during said off period, and wherein during a recurring onperiod, said amplifier section is re-enabled and said phase-locked-loopparameters are again updated continuously.
 26. The electrical waveformgenerator defined in claim 1 wherein said electromechanical load istaken from the group consisting of a piezoelectric and amagnetostrictive transducer.
 27. The electrical waveform generatordefined in claim 1 wherein said amplifier section includes a filternetwork for shaping said output waveform and delivering said outputwaveform to said input leads of said electromechanical load.
 28. Anelectronic generator to drive an electromechanical load having at leastone feedback crystal or coil, comprising: a. a waveform generatorcomponent connected digitally synthesizing an electrical waveform of adesired frequency; b. an amplifier section connected at a control inputto an output of said waveform generator component, said amplifiersection adjusting at least one of a voltage and a current of saidwaveform and generating an output waveform of a desired type and fordelivery to input leads of the electromechanical load; e. f. computingmeans operatively connected at least indirectly to said waveformgenerator component for analyzing voltage and current information andgenerating a control signal fed to said waveform generator component; g.said computing means accessing a memory for storing digitized voltageand current waveform information from said amplifier section and voltageand current waveform information from said feedback crystal or coil, h.said computing means being programmed to process the voltage and currentwaveform information in said memory to determine at least a phasedifference between a feedback signal from said feedback crystal or coiland the voltage or current waveform across the electromechanical load,i. said computing means being further programmed to compare thedetermined phase difference to a phase difference command and togenerate a phase error or correction signal fed at least indirectly tosaid waveform generator component for causing same to adjust its outputfrequency to result in a predetermined operating point as a function ofphase, j. said computing means being additionally programmed to comparethe amplitude of the signal from said feedback crystal or coil to afeedback amplitude command and generate an amplitude error signal forinducing said amplifier section to change its output amplitude to resultin a predetermined amplitude level.
 29. The electrical waveformgenerator defined in claim 28, further comprising first filter means forgenerating said phase error signal and applying a first error signal tosaid waveform generator component, also comprising second filter meansfor generating said amplitude error signal to said control input of saidamplifier section.
 30. The electrical waveform generator defined inclaim 29 wherein said first filter means and said second filter meansare each realized by at least one of software and hardware.
 31. Theelectrical waveform generator defined in claim 28 wherein said computingmeans is further programmed to store, in said memory, samples of controlloop error during start up transients.
 32. The electrical waveformgenerator defined in claim 31 wherein said computing means is furtherprogrammed to analyze said samples of control loop error to determineloop performance and stability.
 33. The electrical waveform generatordefined in claim 28 wherein said computing means is further programmedto use said stored voltage and current waveform information to determinevoltage level values, current level values, and thereby calculate powerlevels taken from the group consisting of real and apparent powerlevels.
 34. The electrical waveform generator defined in claim 33wherein said computing means is further programmed to display said powerlevels on a user interface in absolute and/or relative scales ordisplays.
 35. The electrical waveform generator defined in claim 34wherein said computing means is further programmed to calculate thepower factor between voltage and current signals from said waveformsignals stored in said memory.
 36. The electrical waveform generatordefined in claim 35 wherein said computing means is further programmedto display said power factor on the user interface in absolute and/orrelative scales or displays.
 37. The electrical waveform generatordefined in claim 28 wherein said computing means is further programmedto resolve a zero cross point of said phase difference to a fineresolution by searching for a plus-to-minus or minus-to-plus changebetween two adjacent samples, signifying a crossing of the zero axis, todetermine a ratio of an A/D value of one of said two adjacent samples toan absolute difference in A/D values between said two adjacent samples,to multiply said ratio by a sampling period time spacing between saidtwo adjacent samples to determine where said zero cross point occurs,whereby a fine resolution of zero crossing time may be determined. 38.The electrical waveform generator defined in claim 37 wherein saidcomputing means is further programmed to calculate a power factorbetween voltage and current signals from waveform signals stored in saiddigital memory, to derive a first phase angle from zero-crossinginformation and a second phase angle from said power factor, to comparesaid first phase angle with said second phase angle, to generate a phasecommand or other corrective algorithm for changing the waveformgenerator frequency to maintain said predetermined operating point. 39.The electrical waveform generator defined in claim 28 wherein saidcomputing means is also programmed to determine an actual mechanicalvibration amplitude of said electromechanical load from said feedbacksignal of said feedback crystal or coil.
 40. The electrical waveformgenerator defined in claim 28 wherein said computing means is furtherprogrammed to compute a clamped or static capacitance value of saidelectromechanical load from waveform data stored in said digital memory.41. The electrical waveform generator defined in claim 28 wherein saidelectromechanical load comprises a transducer and the voltage andcurrent waveforms across the electromechanical load comprise transducervoltage and current waveforms, said computing means being furtherprogrammed to determine at least one of the group consisting of phasedifference between transducer voltage and current waveforms, transducervoltage waveform amplitude information, current waveform amplitudeinformation, feedback signal phase difference to either voltage orcurrent waveform, feedback signal amplitude and frequency, waveform RMSvoltage levels, spectral decomposition analysis of waveform information,real or equivalent circuit values of piezoelectric or magnetostrictiveresonators, phase error conditions, and phase or amplitude change rates.42. The electrical waveform generator defined in claim 28 wherein saidcomputing means is programmed to maintain a running window of waveformdata with respect to time in said memory.
 43. The electrical waveformgenerator defined in claim 28 wherein said computing means is furtherprogrammed to determine error levels between a resonant frequency ofsaid electromechanical load and waveform generator output.
 44. Theelectrical waveform generator defined in claim 28 wherein said computingmeans is further programmed to determine error levels between desiredresonator mechanical vibratory amplitude and actual resonator mechanicalvibratory amplitude.
 45. The electrical waveform generator defined inclaim 28 wherein correlated phase difference commands and amplitudecommands are stored in said memory.
 46. The electrical waveformgenerator defined in claim 28 wherein said computing means is furtherprogrammed to vary a phase difference command as a function of commandamplitude for optimal tracking of desired operating point of saidelectromechanical load.
 47. The electrical waveform generator defined inclaim 28 wherein said computing means is further programmed to maintaincontrol loop error in a type 0 phase locked loop constant, independentof frequency of operation.
 48. The electrical waveform generator definedin claim 28 wherein said computing means is further programmed to usecontrol loop parameters in a phase locked loop capture mode that may bedifferent than control loop parameters in a phase locked loop lockedmode.
 49. The electrical waveform generator defined in claim 28 whereinsaid computing means is further programmed to carry out a networkanalysis automatically upon at least one of (i) detection of an abnormaloperating condition and (ii) user command, said computing meansexecuting a linear sweep from a first frequency to a second frequency tocompile an impedance curve and a phase curve, said computing meansstoring results of said linear sweep as data samples in said memory. 50.The electrical waveform generator defined in claim 28 wherein saidcomputing means is further programmed to operate in a fast pulsing mode,wherein phase-locked-loop parameters including frequency and loop errorare held constant while said amplifier section is disabled during arecurring off period, so that said phase-locked-loop parameters are notupdated during said off period, and wherein during a recurring onperiod, said amplifier section is re-enabled and said phase-locked-loopparameters are again updated continuously.
 51. The electrical waveformgenerator defined in claim 28 wherein said electromechanical load istaken from the group consisting of a piezoelectric and amagnetostrictive transducer.
 52. The electrical waveform generatordefined in claim 28, further comprising means for displaying voltage,current, phase and/or impedance curves on a user observable local orremote interface screen.
 53. The electrical waveform generator definedin claim 28, further comprising means for deriving system operating andalarm states from displayed curves and visual or audio means foralerting a user as to said operating and alarm states.
 54. Theelectrical waveform generator defined in claim 28 wherein said computingmeans is programmed to respond to alarm conditions by shutting downoutput, triggering alarms and/or changing output amplitude settings. 55.The electrical waveform generator defined in claim 28 wherein saidamplifier section includes a filter network for shaping said outputwaveform and delivering said output waveform to said input leads of saidelectromechanical load.
 56. The electrical waveform generator defined inclaim 28 wherein said computing means is also programmed to compensatefor a theoretical voltage drop across a capacitor of a transducerequivalent circuit as a function of load by alternatively increasing anddecreasing the output voltage of said amplifier section by approximatelya value Vc_(o) to thereby maintain a theoretical voltage across motionalcomponents of the transducer equivalent circuit substantially constant,where value V_(Co) is a voltage drop across the capacitor of thetransducer equivalent circuit and is given by the equation:V _(Co) =I*Xc _(o) =I/(2ΠfC _(o)) where I is the current, f is thefrequency of operation and C_(o) is the capacitance of the capacitor inthe transducer equivalent circuit.
 57. In a method for driving anelectrostrictive or magnetostrictive transducer at or near parallelresonance, comprising: applying an amplifier output voltage across saidtransducer; using voltage and current feedback to calculate a motionalvoltage of a transducer equivalent circuit having capacitive, inductiveand resistive components, the calculating of said motional voltageincluding subtracting a voltage drop across a static capacitor of thetransducer equivalent circuit as a function of load and maintainingconstant a theoretical voltage across motion components of thetransducer equivalent circuit; modifying said output voltage by thecalculated value of said motional voltage; and feeding a current to saidtransducer in an amount to maintain the voltage drop across saidtransducer at the modified value of said output voltage.
 58. A methodfor driving an electromechanical load, comprising: i. digitallysynthesizing an electrical waveform of a desired frequency; ii. feedingsaid electrical waveform to a control input of an amplifier section;iii. operating said amplifier section to adjust at least one of avoltage and a current of said electrical waveform and generate an outputwaveform of a desired type; iv. delivering said output waveform to inputleads of the electromechanical load, thereby applying analog voltage andcurrent waveforms across the electromechanical load; v. automaticallyanalyzing voltage and current information and generating a controlsignal therefrom, the generating of said electrical waveform beingresponsive to said control signal; vi. the analyzing of said voltage andcurrent information including processing the stored digitized voltageand current waveform information to determine at least a phasedifference between said voltage and current waveforms, vii. theanalyzing of said voltage and current information further includingcomparing the determined phase difference to a phase difference commandand generating a phase error signal; viii. automatically adjusting anoutput frequency of said electrical waveform to result in apredetermined operating point as a function of phase, ix. the analyzingof said voltage and current information further including comparing atleast one of voltage and current amplitude respectively to a voltageamplitude command and a current amplitude command and generating anamplitude error signal; and x. operating said amplifier section toautomatically adjust an amplitude of said output waveform to result in apredetermined amplitude for a respective one of said voltage and currentwaveforms.
 59. An electronic generator to drive an electromechanicalload, comprising: a. a waveform generator component digitallysynthesizing an electrical waveform of a desired frequency; b. anamplifier section connected at a control input to an output of saidwaveform generator component, said amplifier section adjusting at leastone of a voltage and a current of said waveform and generating an outputwaveform of a desired type and for delivery to input leads of theelectromechanical load; c. computing means operatively connected atleast indirectly to said waveform generator component for analyzingvoltage and current information and generating a control signal fed tosaid waveform generator component; d. said computing means beingprogrammed to process voltage and current waveform information todetermine at least a phase difference between a motional current andvoltage, e. said computing means being further programmed to compare thedetermined phase difference to a phase difference command and togenerate a phase error or correction signal fed at least indirectly tosaid waveform generator component for causing same to adjust its outputfrequency to result in a predetermined operating point of said load as afunction of phase, f. said computing means being programmed to use aMason model having a capacitor C₀ carrying a current IC₀ in parallelwith a motional branch carrying a motional current I_(m) and in serieswith the total current I through the electromechanical load, g. saidcomputing means being programmed to calculate a motional phase angleθ_(m) of the Mason model as the inverse cosine of the total current Itimes the cosine of the phase angle θ_(I) between the measured voltageand current divided by the motional current I_(m):θ_(m) =a cos [(I cos θ_(I))/I _(m)] where motional current I_(m) isobtained by vector subtraction of the current IC₀ through the capacitorC₀ of the Mason model from the total current I, said computing meansvarying the commanded operating point (motional phase angle θ_(m)) as afunction of load.
 60. In a method for driving an electrostrictive ormagnetostrictive transducer at or near resonance, using a Mason modelhaving a capacitor C₀ carrying a current IC₀ in parallel with a motionalbranch carrying a motional current I_(m) and in series with the totalcurrent I through the transducer, comprising: applying an amplifieroutput voltage across said transducer; using voltage and currentfeedback to calculate the total current I and its phase angle θ_(I) withrespect to the voltage in the motional branch of the Mason model;automatically calculating a motional phase angle θ_(m) of the Masonmodel as the inverse cosine of the total current I times the cosine ofthe phase angle θ₁ between the measured voltage and current divided bythe motional current I_(m):θ_(m) =a cos [(I cos θ_(I))/I _(m)]. where motional current I_(m) isobtained by vector subtraction of the current IC₀ through the capacitorC₀ of the Mason model from the total current I; and varying a commandedoperating point by varying the motional phase angle θ_(m) as a functionof load.